iT邦幫忙

2024 iThome 鐵人賽

DAY 15
0
Python

30天Python學習之旅系列 第 15

Day 15 : 資料封裝

  • 分享至 

  • xImage
  •  

今天的主題是資料封裝封裝性,這是物件導向程式設計中非常重要的概念。封裝的目的是將資料與操作資料的方法包在一起,並透過控制資料的存取權限來保護程式的安全性與穩定性。這讓我們能夠在開發過程中隱藏內部運作細節,確保外部使用者無法隨意改動物件內部的屬性或方法。

1. 封裝的基本概念

封裝指的是將物件的屬性和方法結合在一起,並通過限制外界對這些屬性的直接存取來保護資料。例如,在 Python 中,我們可以使用雙底線(__)將屬性定義為私有屬性。這樣可以避免程式在使用過程中意外地修改物件內部的資料。

https://ithelp.ithome.com.tw/upload/images/20240928/20169078BuXXmOFLnA.png

在這個例子中, _name__age 屬性是私有的,無法從類別外部直接存取。這樣可以確保外部程式碼無法隨意更改這些屬性,達到資料保護的目的。

封裝性(Encapsulation)

封裝性是封裝的延伸,強調「隱藏內部細節」的重要性。當一個物件的內部運作細節被封裝起來時,外界只能透過定義好的接口(例如方法)來存取物件的資料,而無需知道內部的運作方式。這不僅提高了程式的可讀性,還能減少內部實現改動所帶來的風險。

https://ithelp.ithome.com.tw/upload/images/20240928/20169078dZcNVdeJq7.png

在這個範例中,__balance 是一個私有屬性,只有通過 depositwithdraw 方法才能進行存款或取款操作,這保證了帳戶的操作流程是安全的。

透過今天的學習,我了解了如何透過資料封裝與封裝性來保護物件的內部資料,並讓程式更加穩定與安全。封裝與封裝性是物件導向程式設計中的關鍵技術,能有效避免資料的洩露與修改。在接下來的學習中,我將繼續探索更多物件導向的進階概念,進一步提升程式設計技巧。


上一篇
Day 14 : 繼承與多型
下一篇
Day 16 : 靜態方法與類別方法
系列文
30天Python學習之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言